З В І Т До лабораторної роботи №6

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
УІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2013
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Інші

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА ЗІ З В І Т До лабораторної роботи №6 з курсу: „ Комп'ютерні методи дослідження інформаційних процесів і систем” Варіант 13 Львів 2013 ЗАВДАННЯ: розв’язати диференційне рівняння  при умові у(0)=3 методом Рунге-Кутта з автоматичною зміною кроку. Короткі теоретичні відомості Метод Рунге-Кутта з автоматичною зміною кроку Після обчислення  з кроком  всі обчислення виконуються повторно з кроком . Після цього порівнюються результати, отримані в точці хn+1 з кроком  і . Якщо модуль різниці менший , то обчислення продовжуються з кроком , в іншому випадку крок зменшують. Якщо нерівність дуже сильна, то крок збільшують.  Маємо   - значення незалежної змінної в точці  - значення функції в точці - значення функції в точці , обчислене з кроком  - значення функції в точці , обчислене з кроком   - значення функції , обчислене з кроком  1) Якщо  обчислення повторюються з кроком  і т.д., доки не виконається умова . 2) Якщо виконується ця умова, то можливі два варіанти, в залежності від значення K, де K – ознака поділу кроку. Початкове значенняі залишається таким після першого поділу кроку на два. Надалі, якщо крок ділиться, то K приймає значення одиниці. а) Якщо , то навіть коли виконалась умова , крок не змінюється, тобто лишається тим самим (обчислення далі проводяться з попереднім кроком). б) Якщо  і виконалась умова , тоді . В обох випадках а) і б) результат виводиться на друк. ТЕКСТ ПРОГРАМИ: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication3 { class Program { static void Main(string[] args) { int i = 0, j = 0; double x = 0; double y = 3; double y1, y2, y3; double h = 0.01; double E = 0.001; double K1, K2, K3, K4, K, KK; { for (x = 0; x <= 1; i++) { K = 0; KK = 0; K1 = Math.Sqrt(Math.Log(x*x+5*y*y)+2*y); K2 = (x + h) * (y + h) * K1; K3 = (x + h) * (y + h) * K2; K4 = (x + h) * (y + h) * K3; y1 = (y + h / 6) * (K1 + 2 * K2 + 2 * K3 + K4); K1 = Math.Sqrt(Math.Log(x * x + 5 * y * y) + 2 * y); K2 = (x + h / 2) * (y + h / 2) * K1; K3 = (x + h / 2) * (y + h / 2) * K2; K4 = (x + h / 2) * (y + h / 2) * K3; y2 = (y + h / 6) * (K1 + 2 * K2 + 2 * K3 + K4); K1 = Math.Sqrt(Math.Log(x * x + 5 * y * y) + 2 * y); K2 = (x + h / 2 + h / 2) * (y + h / 2 + h / 2) * K1; K3 = (x + h / 2 + h / 2) * (y + h / 2 + h / 2) * K2; K4 = (x + h / 2 + h / 2) * (y + h / 2 + h / 2) * K3; y3 = (y + h / 6) * (K1 + 2 * K2 + 2 * K3 + K4); for (j = 0; Math.Abs(y3 - y1) > E; j++) { if (KK == 1) K = 1; KK = 1; h = h / 2; y1 = y2; K1 = Math.Sqrt(Math.Log(x * x + 5 * y * y) + 2 * y); K2 = (x + h / 2) * (y + h / 2) * K1; K3 = (x + h / 2) * (y + h / 2) * K2; K4 = (x + h / 2) * (y + h / 2) * K3; y2 = (y + h / 6) * (K1 + 2 * K2 + 2 * K3 + K4); K1 = Math.Sqrt(Math.Log(x * x + 5 * y * y) + 2 * y); K2 = (x + h / 2 + h / 2) * (y + h / 2 + h / 2) * K1; K3 = (x + h / 2 + h / 2) * (y + h / 2 + h / 2) * K2; K4 = (x + h / 2 + h / 2) * (y + h / 2 + h / 2) * K3; y3 = (y + h / 6) * (K1 + 2 * K2 + 2 * K3 + K4); ...
Антиботан аватар за замовчуванням

29.05.2013 23:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини